home *** CD-ROM | disk | FTP | other *** search
- unit uChooseLink;
-
- interface
-
- uses
- Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
- Dialogs, StdCtrls, uContactSync, ComCtrls, ExtCtrls, TntStdCtrls,
- TntComCtrls;
-
- type
- TfrmChooseLink = class(TForm)
- Label1: TLabel;
- Label2: TLabel;
- Label3: TLabel;
- btnOk: TButton;
- btnAsNew: TButton;
- Label4: TLabel;
- Image1: TImage;
- btnAll: TButton;
- btnCancel: TButton;
- edtFullName: TTntEdit;
- lvContacts: TTntListView;
- procedure FormCreate(Sender: TObject);
- procedure lvContactsSelectItem(Sender: TObject; Item: TListItem;
- Selected: Boolean);
- procedure FormShow(Sender: TObject);
- private
- FContact: TContact;
- FPossibleLinks: TPossibleLinks;
- procedure SetContact(const Value: TContact);
- procedure SetPossibleLinks(const Value: TPossibleLinks);
- public
- property Contact: TContact read FContact write SetContact;
- property PossibleLinks: TPossibleLinks read FPossibleLinks write SetPossibleLinks;
- function OtherContact(GetDefaultOne: boolean = False): TContact;
- end;
-
- implementation
-
- uses Unit1;
-
- {$R *.dfm}
-
- { TfrmChooseLink }
-
- function TfrmChooseLink.OtherContact(GetDefaultOne: boolean): TContact;
- begin
- Result := nil;
- if GetDefaultOne and (lvContacts.Items.Count <> 0) then
- lvContacts.Selected := lvContacts.Items[0];
- if lvContacts.Selected <> nil then
- Result := FPossibleLinks[lvContacts.Selected.Index].Contact;
- end;
-
- procedure TfrmChooseLink.SetContact(const Value: TContact);
- begin
- FContact := Value;
- edtFullName.Text := FContact.FullName;
- end;
-
- procedure TfrmChooseLink.SetPossibleLinks(const Value: TPossibleLinks);
- var I: Integer;
- begin
- FPossibleLinks := Value;
- lvContacts.Items.BeginUpdate;
- try
- lvContacts.Items.Clear;
- for I := 0 to FPossibleLinks.Count - 1 do
- with lvContacts.Items.Add do begin
- Caption := FPossibleLinks[I].Contact.FullName;
- ImageIndex := 20;
- end;
- finally
- lvContacts.Items.EndUpdate;
- end;
- end;
-
- procedure TfrmChooseLink.FormCreate(Sender: TObject);
- begin
- Label2.Font.Style := Label2.Font.Style + [fsBold];
- Label3.Font.Style := Label3.Font.Style + [fsBold];
- end;
-
- procedure TfrmChooseLink.lvContactsSelectItem(Sender: TObject;
- Item: TListItem; Selected: Boolean);
- begin
- btnOk.Enabled := Selected;
- btnOk.Default := btnOk.Enabled;
- end;
-
- procedure TfrmChooseLink.FormShow(Sender: TObject);
- begin
- lvContacts.SetFocus;
- if lvContacts.Items.Count <> 0 then begin
- lvContacts.Selected := lvContacts.Items[0];
- lvContactsSelectItem(lvContacts,lvContacts.Selected,True);
- end;
- end;
-
- end.
-